package com.atguigu.common.exception;

/**
 *   错误码和错误信息定义枚举类，枚举类的特点就是属性私有，可通过get方法来获取属性值
     1.错误码定义规则为5为数字
     2.前两位表示业务场景，最后三位表示错误码。例如：10001。10：通用，001系统未知异常
     3.维护错误码后需要维护错误描述，将他们定义为枚举形式
     错误码列表如：
     10：通用
     001：参数格式校验
     002：短信验证码发送频繁
     11：商品
     12：订单
     13：购物车
     14：物流
    15:用户
    21:库存
 */
public enum BizCodeEnume {
    UNKNOW_EXCEPTION(10000,"系统未知异常"),
    VALID_EXCEPTION(10001,"参数格式校验错误"),
    SMS_CODE_EXISTS(10002,"短信验证码发送太频繁，请稍后重试"),
    PRODUCT_UP_EXCEPTION(11000,"商品上架异常"),
    USERNAME_EXISTS(15000,"用户已存在"),
    PHONE_EXISTS(15001,"手机号已存在"),
    USERACCOUNT_VALID(15001,"账户验证失败"),
    SOCIALUSERACCOUNT_VALID(15001,"社交账号登录失败"),
    NO_STOCK_EXCEPTION(21000,"商品库存不足");
    private int code;
    private String msg;
    BizCodeEnume(int code,String msg){
        this.code=code;
        this.msg=msg;
    }

    public int getCode() {
        return code;
    }

    public String getMsg() {
        return msg;
    }
}
